#字符串方法
#count 方法 返回字符串对象包含了多少个参数指定的字符串
str1 = "hello world"
print(str1.count("o"))
#len 方法 计算字符串长度
print(len(str1))
#find 方法 会在字符串中查找 参数 子字符串
#并返回该 参数字符串 在其中 第一个 出现的位置索引
str1 = "今天不去上学，我们去踢足球"
print(str1.find("我们"))

#split 方法以参数字符串为分割符 
#将字符串 切割为多个 字符串，作为元素存入一个列表，并返回这个列表。
str1 = "hello world"
list1 = str1.split()
print(list1)

#splitlines 方法 把字符串 按换行符 进行切割
salary = '''
小王  10000元
小李  20000元
小徐  15000元
'''

print(salary.splitlines())

#join 方法
list1 = ['hello', 'world', 'python']
print(' '.join(list1))

#strip 方法 将字符串的左右两边的空格删除
str1 = '   hello world   '
print(str1.strip())
#lstrip 方法 删除字符串的左边空格
str1 = '   hello world   '
print(str1.lstrip())
#rstrip 方法 删除字符串的右边空格
str1 = '   hello world   '
print(str1.rstrip())

#replace 方法 替换字符串中指定的子字符串
str1 = '我们今天不去上学，我们去踢足球'
str1 = str1.replace('我们', '他们')  
print(str1)

#startswith 方法 判断字符串是否以参数指定的字符串开头
#endswith 方法 判断字符串是否以参数指定的字符串结尾
str1 = '我们今天不去上学，我们去踢足球'
print(str1.startswith('我们')) #True
print(str1.endswith('我们')) #False

#isdigit 方法 判断字符串是否只包含数字
str1 = '123456'
print(str1.isdigit()) #True

#字符串的倒序
str1 = '字符串的倒序'
reverse = str1[::-1]
print(reverse)


#列表方法
#append 方法 在列表后面添加元素
a = [1,2,3,4,5]
a.append(6)
print(a)

#insert 方法 在列表指定位置添加元素
a = [1,2,3,4,5]
a.insert(0,'你好') #在列表第一个位置添加
print(a)

#pop 方法 从列表 取出并删除 一个元素
#该方法的参数就是要取出的元素的索引
a = [1, 2, 3.14, 'hello']
poped = a.pop(2) 
print(a)
print(poped) #pop 方法的返回值 是 提取出来的元素

#remove 方法 从列表中删除一个元素
#remove最多删除一个元素
var1 = ['a','b','c','a']
var1.remove('a')
print(var1)

#reverse 方法 反转列表
var1 = [1,2,3,4,5,6,7]
var1.reverse()
print(var1)

#index 方法 返回参数对象 在列表 中的索引
var1 = [1,2,3,4,5,6,7]
idx = var1.index(5)
print(idx)

#sort 方法 对列表进行排序
students = ['Alex','Tom','Jerry','Michale','Alex']
students.sort()
print(f'after sort: {students}')

numbers = [7,3,8,2,9]
numbers.sort()
print(f'after sort: {numbers}')


